GDL-III: A Proposal to Extend the Game Description Language to General Epistemic Games
نویسنده
چکیده
We propose an extension of the standard game description language for general game playing to include epistemic games, which are characterised by rules that depend on the knowledge of players. A single additional keyword suffices to define GDL-III, a general description language for games with imperfect information and introspection. We present an Answer Set Program for automatically reasoning about GDL-III games. Our extended language along with a suitable basic reasoning system can also be used to formalise and solve general epistemic puzzles. Introduction. A general game player is a system that can understand the rules of new strategy games at runtime and learn to play these games effectively without human intervention [4]. The game description language GDL has become the standard for describing the rules of games to general game-playing systems [3]. The extension GDL-II has been developed with the aim to include general imperfect information games [5]. While these games require general game players to reason about their knowledge of the state of a game, GDL-II does not support the specification of games with epistemic goals or, more generally, with rules that depend on the epistemic state of players. As an example, consider the game NUMBERGUESSING from the GDL-II track at the AI’12 general game playing competition, in which the goal for a single player is to repeatedly ask yes/no questions to determine an initially unknown number. However, the player can win merely by guessing correctly; the game description language does not provide means to specify, as a necessary winning condition, that the player must actually know the number. Another example of games beyond the expressiveness of GDL-II are so-called Russian Card problems [2], where the goal of two cooperating players is to inform each other about their hands through public announcements without a third player being able to learn anything from their communication. The purpose of this paper is to propose a formal language suitable for general game playing that supports the encoding of game rules which depend on the epistemic states of the players. We will show that a single additional keyword suffices to define GDL-III, a general description language for games with Imperfect Information and Introspection. The new keyword can be used to express individual knowledge, which can also be nested (e.g. player A knows that her cards are known to player B) as well as common knowledge (e.g. player C does not know of any card held by another player and everyone knows this—and also everyone knows that everyone knows etc). While the main purpose of our language extension is to allow for 1 UNSW Australia, email: [email protected]. This research was supported by the Australian Research Council under grant no. DP150101351. The author is also affiliated with the University of Western Sydney. 2 see ai2012.web.cse.unsw.edu.au/ggp.html the description of epistemic games for the purpose of general game playing, we will furthermore demonstrate how GDL-III can be used to encode, and automatically solve, epistemic puzzles like Cheryl’s Birthday, which recently acquired public fame [1]. Game Descriptions. The declarative Game Description Language (GDL) uses a prefix-variant of the syntax of normal logic programs along with the following special keywords, the last two of which have been added in GDL-II for imperfect-information games. (role R) R is a player (init F) feature F holds in the initial position (true F) feature F holds in the current position (legal R M) R has move M in the current position (does R M) player R does move M (next F) feature F holds in the next position terminal the current position is terminal (goal R V) player R gets payoff V (sees R P) player R is told P in the next position random the random player (aka. Nature) GDL-III = GDL-II + Introspection. We define GDL-III as an extension of GDL-II by a new keyword for introspection, (knows R P) player R knows P in the current position (knows P) P is common knowledge along with the following additional restrictions on syntactically valid game descriptions G: 1. knows only occurs in the body of clauses, and neither role nor init depend on knows. 2. There is a total ordering > on all predicate symbols P that occur as argument of knows in G such that P > Q whenever P itself depends on (knows R Q) or (knows Q) in G. 3. If P occurs as argument of knows in G then P does not depend on does in G. Note the use of reification, whereby a defined predicate, P, occurs as an argument of another predicate. Nested knowledge can be expressed with the help of auxiliary predicates, for example, (knows a kbp) along with (<= kbp (knows b p)). The syntactical restrictions then ensure that nested knowledge is hierarchical (condition 2) and confined to state-dependent properties (condition 3). The former simply disallows circular definitions, as in (<= p (knows q)), (<= q (knows p)), while the latter restriction ensures that knowledge only refers to the current state and not to future actions. 1 (role player) (role random) 2 3 (number 1) ... (number 32) 4 (succ 0 1) ... (succ 31 32) 5 (<= (less ?m ?n) (or (succ ?m ?n) 6 ((succ ?m ?l) (less ?l ?n)))) 7 (init (step 0)) 8 9 (<= (legal random (choose ?n)) 10 (number ?n) (true (step 0))) 11 (<= (legal random noop) (not (true (step 0)))) 12 13 (<= (legal player noop) (true (step 0))) 14 (<= (legal player (ask_if_less ?n)) 15 (number ?n) (not (true (step 0)))) 16 (<= (sees player yes) 17 (does player (ask_if_less ?n)) 18 (true (secret ?m)) (less ?m ?n)) 19 20 (<= (next (secret ?n)) (does random (choose ?n))) 21 (<= (next (secret ?n)) (true (secret ?n))) 22 (<= (next (step ?n)) (true (step ?m)) (succ ?m ?n)) 23 24 (<= (num ?n) (true (secret ?n))) 25 (<= (kows_the_number ?r) (role ?r) (knows ?r (num ?n))) 26 27 (<= (terminal) (or (knows_the_number player) 28 (true (step 12)))) 29 (<= (goal player 100) (knows_the_number player)) 30 (<= (goal player 0) (not (knows_the_number player))) Example 1 The rules on the top of this page formalise a GDL-III variant of NUMBERGUESSING. Line 1 introduces the roles. Lines 3–5 define some auxiliary predicates. Line 7 provides the initial game state. The moves are specified by the rules for legal: In the first round, a number between 1 and 32 is randomly chosen (lines 9–10). The player can then repeatedly ask yes/no questions (lines 14–15). The player’s percepts are truthful replies to these questions (lines 16–18). The rules for next specify the state update (lines 20–22). The objective of the game is formulated as a knowledge goal (lines 24–30): the game ends (terminal) and the player wins (goal value 100) upon knowing the secret number. Automated Reasoning for GDL-III. In order to be able to play games specified in the extended game description language, any general game-playing system needs an automated reasoning component for evaluating the rules to determine legal moves and compute state updates. In this section, we build on previous uses of Answer Set Programming (ASP) to develop the foundations for automated reasoners for GDL-III. The game description language and ASP have essentially the same basic semantics given by the unique stable model (aka. answer set) of a stratified set of logic program rules. Since the evaluation of knowledge conditions depends on previous moves and percepts, all state-dependent predicates in a game description are augmented by two additional arguments so that a single ASP can be used to reason about different legal play sequences, seq(S), and different time points, time(T). For example, the ASP-encoding of rule 25 in NUMBERGUESSING is knows_the_number(R,S,T) :-
منابع مشابه
GDL-III: A Description Language for Epistemic General Game Playing
GDL-III, a description language for general game playing with imperfect information and introspection, supports the specification of epistemic games. These are characterised by rules that depend on the knowledge of players. GDL-III provides a simpler language for representing actions and knowledge than existing formalisms: domain descriptions require neither explicit axioms about the epistemic ...
متن کاملStrategic and Epistemic Reasoning for the Game Description Language GDL-II
The game description language GDL has been developed as a logic-based formalism for representing the rules of arbitrary games in general game playing. A recent language extension called GDL-II allows to describe nondeterministic games with any number of players who may have incomplete, asymmetric information. In this paper, we show how the well-known Alternating-time Temporal Epistemic Logic (A...
متن کاملLogical-Epistemic Foundations of General Game Descriptions
A general game player automatically learns to play arbitrary new games solely by being told their rules. For this purpose games are specified in the general Game Description Language (GDL), a variant of Datalog with function symbols that uses a few game-specific keywords. A recent extension of basic GDL allows the description of nondeterministic games with any number of players who may have inc...
متن کاملThe Epistemic Logic Behind the Game Description Language
A general game player automatically learns to play arbitrary new games solely by being told their rules. For this purpose games are specified in the game description language GDL, a variant of Datalog with function symbols and a few known keywords. In its latest version GDL allows to describe nondeterministic games with any number of players who may have imperfect, asymmetric information. We an...
متن کاملEpistemic GDL: A Logic for Representing and Reasoning about Imperfect Information Games
This paper proposes a logical framework for representing and reasoning about imperfect information games. We first extend the game description language (GDL) with the standard epistemic operators and provide it with a semantics based on the epistemic state transition model. We then demonstrate how to use the language to represent the rules of an imperfect information game and formalize its epis...
متن کامل